<!DOCTYPE HTML>
<html>
	<head>
		<title>onkeydown</title>
		<meta charset="utf-8">
		<style>
			#div1{
				width:300px;
				height:300px;
				background: red;
				position: absolute;
			}
		</style>
		<script>
		var timer=null;
		//问题主要出在没有分清setInterval与setTimeout的区别，
		//一个是间隔型，一个是延时型
			document.onkeydown=function(ev){
				var oEvent=ev||event;
				var oDiv=document.getElementById('div1');
				 timer=setTimeout(function(){
				//alert(oEvent.keyCode);
				if(oEvent.keyCode==39)
				{
					oDiv.style.left=oDiv.offsetLeft+10+'px';
				}
				else if(oEvent.keyCode==37)
				{
					oDiv.style.left=oDiv.offsetLeft-10+'px';
				}

				},3);
			}
			document.onkeyup=function(){
				clearTimeout(timer);
			}
		</script>
	</head>
	<body>
		<div id="div1"></div>
	</body>
</html>